package com.ccp.dev.workflow.model;

import com.ccp.dev.core.basic.model.BaseModel;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlRootElement;

/**
 * 对象功能:流程节点事件脚本 Model对象
 * @author:jiayueqiao
 * 创建时间:2019-07-03
 */
@XmlRootElement(name = "bpmNodeScript")
@XmlAccessorType(XmlAccessType.NONE)
public class BpmNodeScript extends BaseModel<BpmNodeScript> {

	/**
	 * 	表名称
	 */
	public static final String TABLE_NAME = "BPM_NODE_SCRIPT";
    public static final Integer SCRIPT_TYPE_1 = 1;
    public static final Integer SCRIPT_TYPE_2 = 2;
    public static final Integer SCRIPT_TYPE_3 = 3;
    public static final Integer SCRIPT_TYPE_4 = 4;
	/**
	 * 会签节点执行事件脚本
	 */
	public static final Integer SCRIPT_TYPE_5 = 5;

    /**
	 * 主键
	 */
	@XmlAttribute
	protected String id;
	/**
	 * 备注
	 */
	@XmlAttribute
	protected String memo;

	/**
	 * 流程节点ID
	 */
	@XmlAttribute
	protected String nodeId;

	/**
	 * 流程定义ID
	 */
	@XmlAttribute
	protected String procDefId;

	/**
	 * 脚本
	 */
	@XmlAttribute
	protected String script;

	/**
	 * 脚本类型
	 */
	@XmlAttribute
	protected Integer scriptType;

	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 返回 主键
	 * @return
	 */
	public String getId() {
		return id;
	}

	public void setMemo(String memo) {
		this.memo = memo;
	}

	/**
	 * 返回 memo
	 * @return
	 */
	public String getMemo() {
		return memo;
	}

	public void setNodeId(String nodeId) {
		this.nodeId = nodeId;
	}

	/**
	 * 返回 流程节点ID
	 * @return
	 */
	public String getNodeId() {
		return nodeId;
	}

	public void setProcDefId(String procDefId) {
		this.procDefId = procDefId;
	}

	/**
	 * 返回 流程定义ID
	 * @return
	 */
	public String getProcDefId() {
		return procDefId;
	}

	public void setScript(String script) {
		this.script = script;
	}

	/**
	 * 返回 脚本
	 * @return
	 */
	public String getScript() {
		return script;
	}

	public void setScriptType(Integer scriptType) {
		this.scriptType = scriptType;
	}

	/**
	 * 返回 脚本类型
	 * @return
	 */
	public Integer getScriptType() {
		return scriptType;
	}

	@Override
	public Object clone() {
		BpmNodeScript obj = null;
		try {
			obj = (BpmNodeScript) super.clone();
		} catch (CloneNotSupportedException e) {
			e.printStackTrace();
		}
		return obj;
	}

}